// Copyright 2022 a.o.smith ALL Rights Reserved
package com.liuxinlong.modules.dao.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.liuxinlong.modules.system.dto.ExportUserDto;
import org.springframework.stereotype.Service;

import com.liuxinlong.modules.dao.UserDao;
import com.liuxinlong.modules.entity.User;
import com.liuxinlong.modules.mapper.UserMapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;

/**
 * 类描述
 * <p>
 * 此类关联设计的功能
 *
 * @author liuxinlong@hotwater.com.cn
 * @version 1.0.0
 * @since 2022年2月22日
 */
@Service
public class UserDaoImpl extends ServiceImpl<UserMapper, User> implements UserDao {
    @Override
    public List<User> pageUserList(Map<String, Object> queryParam) {
        return baseMapper.pageUserList(queryParam);
    }

    @Override
    public int getUserCount(Map<String, Object> queryParam) {
        return baseMapper.getUserCount(queryParam);
    }

    @Override
    public User getUserByAccount(String account) {
        return baseMapper.getUserByAccount(account);
    }

    @Override
    public void updateUserStatus(String userId, int targetStatus, String lastLoginTime) {
        baseMapper.updateUserStatus(userId, targetStatus,lastLoginTime);
    }

    @Override
    public Map<String, Map<String, String>> getUserMap() {
        return baseMapper.getUserMap();
    }

    @Override
    public Map<String, Map<String, String>> getUserPictureMap() {
        return baseMapper.getUserPictureMap();
    }

    @Override
    public List<User> getUserList() {
        return baseMapper.getUserList();
    }

    @Override
    public List<ExportUserDto> getAllUserList() {
        return baseMapper.getAllUserList();
    }

    @Override
    public void updatePassword(String userId, String password) {
        baseMapper.updatePassword(userId, password);
    }

    @Override
    public void updateUserExp(User user) {
        baseMapper.updateUserExp(user);
    }

    @Override
    public Map<String, Map<String, String>> getUserMapBySn() {
        return baseMapper.getUserMapBySn();
    }

    @Override
    public List<User> getOnlineUserList() {
        return baseMapper.getOnlineUserList();
    }

    @Override
    public User getUserBySn(String sn) {
        return baseMapper.getUserBySn(sn);
    }

    @Override
    public List<String> getUserByDeps(List<String> depList) {
        return baseMapper.getUserByDeps(depList);
    }

    @Override
    public Map<String, Map<String, String>> getUserWechatMap() {
        return baseMapper.getUserWechatMap();
    }

    @Override
    public Map<String, Map<String, String>> getWechatUserMap() {
        return new HashMap<>();
    }

    @Override
    public List<User> getUserListByName(String userName) {
        return baseMapper.getUserListByName(userName);
    }

    @Override
    public List<User> getUserBaseList() {
        return baseMapper.getUserBaseList();
    }


}
